package com.bing.bingPro.entity;

import cn.hutool.core.annotation.Alias;
import cn.org.atool.fluent.mybatis.annotation.FluentMybatis;
import cn.org.atool.fluent.mybatis.annotation.TableId;
import cn.org.atool.fluent.mybatis.base.RichEntity;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 提测与结果表 实体类
 *
 * @author author
 * @email email
 * @since 2021-12-21 11:58:17
 */
@ExcelIgnoreUnannotated
@JsonInclude(JsonInclude.Include.NON_NULL)
@FluentMybatis(table = "test_details")
@ColumnWidth(20)
public class TestDetailsEntity extends RichEntity {


    /**
     * 主键
     */
    @TableId
    private Long id;

    /**
     * 厂商
     */
    @Alias("changshang")
    @ExcelProperty(value = {"厂商"})
    private String vendor;

    /**
     * 形态
     */
    @ExcelProperty(value = {"形态"})
    private String shape;

    /**
     * 类型
     */
    @ExcelProperty(value = {"类型"})
    private String type;

    /**
     * 代工厂
     */
    @ExcelProperty(value = {"代工厂"})
    private String foundry;

    /**
     * 网关型号
     */
    @ExcelProperty(value = {"网关型号"})
    private String gatewayModel;

    /**
     * 网关硬件版本
     */
    @ExcelProperty(value = {"网关硬件版本"})
    private String gatewayHardwareVersion;



    /**
     * 芯片厂家
     */
    @ExcelProperty(value = {"芯片厂家"})
    private String chipFactory;

    /**
     * CPU型号
     */
    @ExcelProperty(value = {"CPU型号"})
    private String cpuModel;

    /**
     * WiFi芯片厂家
     */
    @ExcelProperty(value = {"WiFi芯片厂家"})
    private String wifiChipFactory;

    /**
     * WiFi芯片型号
     */
    @ExcelProperty(value = {"WiFi芯片型号"})
    private String wifiChipModel;

    /**
     * 内存型号
     */
    @ExcelProperty(value = {"内存型号"})
    private String ramModel;



    /**
     * 21年统一软件版本
     */
    private String t2021Version;

    /**
     * 21年提测结果
     */
    private String t2021Result;

    /**
     * 21年提测时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date t2021TestTimestamp;

    /**
     * 21年测试未通过项
     */
    private String t2021FailedItems;

    /**
     * 21年测试未通过项个数
     */
    private Integer t2021FailedItemsNum;

    /**
     * 21年结果由通过变更为不通过
     */
    private String t2021PassToFailFlag;

    /**
     * 21年版本全国测试通过率
     */
    private Float t2021TotalPassRate;

    /**
     * 21年版本省内是否可部署
     */
    private String t2021AllowDeploy;

    /**
     * 22年统一软件版本
     */
    private String t2022Version;

    /**
     * 22年提测结果
     */
    private String t2022Result;

    /**
     * 22年提测时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date t2022TestTimestamp;

    /**
     * 22年测试未通过项
     */
    private String t2022FailedItems;

    /**
     * 22年测试未通过项个数
     */
    private Integer t2022FailedItemsNum;

    /**
     * 22年结果由通过变更为不通过
     */
    private String t2022PassToFailFlag;

    /**
     * 22年版本全国测试通过率
     */
    private Float t2022TotalPassRate;

    /**
     * 22年版本省内是否可部署
     */
    private String t2022AllowDeploy;

    /**
     * 23年统一软件版本
     */
    @ExcelProperty(value = {"23年统一软件版本"})
    private String t2023Version;

    /**
     * 省份
     */
    @ExcelProperty(value = {"省份"})
    private String province;


    /**
     * 23年提测时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ExcelProperty(value = {"23年提测时间"})
    private Date t2023TestTimestamp;

    /**
     * 23年测试未通过项
     */
    private String t2023FailedItems;

    /**
     * 23年测试未通过项个数
     */
    private Integer t2023FailedItemsNum;

    /**
     * 23年结果由通过变更为不通过
     */
    private String t2023PassToFailFlag;

    /**
     * 23年版本全国测试通过率
     */
    @ExcelProperty(value = {"23年版本全国测试通过率"})
    private Float t2023TotalPassRate;

    /**
     * 23年版本省内是否可部署
     */
    @ExcelProperty(value = {"23年版本省内是否可部署"})
    private String t2023AllowDeploy;

    /**
     * 23年提测结果
     */
    @ExcelProperty(value = {"23年提测结果"})
    private String t2023Result;

    /**
     * 移动测试负责人
     */
    private String cmTestContact;

    /**
     * 联系电话
     */
    private String cmContactMobile;

    /**
     * OA联系邮箱
     */
    private String cmContactMailbox;

    /**
     * 厂商接口人
     */
    private String vdContact;

    /**
     * 联系电话
     */
    private String vdContactMobile;

    /**
     * 邮箱
     */
    private String vdContactMailbox;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 条目状态
     */
    private String lineStatus;

    /**
     * 待修改条目
     */
    private String editLine;

    /**
     * 审核意见
     */
    private String checkOpinion;

    public TestDetailsEntity() {
        super();
    }

    /**
     * 获取待修改条目
     */
    public String getEditLine() {
        return editLine;
    }

    /**
     * 设置待修改条目
     */
    public void setEditLine(String editLine) {
        this.editLine = editLine;
    }

    /**
     * 获取审核意见
     */
    public String getCheckOpinion() {
        return checkOpinion;
    }

    /**
     * 设置审核意见
     */
    public void setCheckOpinion(String checkOpinion) {
        this.checkOpinion = checkOpinion;
    }

    /**
     * 获取创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取条目状态
     */
    public String getLineStatus() {
        return lineStatus;
    }

    /**
     * 设置条目状态
     */
    public void setLineStatus(String lineStatus) {
        this.lineStatus = lineStatus;
    }

    /**
     * 获取主键
     */
    public Long getId() {
        return id;
    }

    /**
     * 设置主键
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 获取厂商
     */
    public String getVendor() {
        return vendor;
    }

    /**
     * 设置厂商
     */
    public void setVendor(String vendor) {
        this.vendor = vendor;
    }

    /**
     * 获取形态
     */
    public String getShape() {
        return shape;
    }

    /**
     * 设置形态
     */
    public void setShape(String shape) {
        this.shape = shape;
    }

    /**
     * 获取类型
     */
    public String getType() {
        return type;
    }

    /**
     * 设置类型
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * 获取网关型号
     */
    public String getGatewayModel() {
        return gatewayModel;
    }

    /**
     * 设置网关型号
     */
    public void setGatewayModel(String gatewayModel) {
        this.gatewayModel = gatewayModel;
    }

    /**
     * 获取网关硬
     * 件版本
     */
    public String getGatewayHardwareVersion() {
        return gatewayHardwareVersion;
    }

    /**
     * 设置网关硬
     * 件版本
     */
    public void setGatewayHardwareVersion(String gatewayHardwareVersion) {
        this.gatewayHardwareVersion = gatewayHardwareVersion;
    }

    /**
     * 获取代工厂
     */
    public String getFoundry() {
        return foundry;
    }

    /**
     * 设置代工厂
     */
    public void setFoundry(String foundry) {
        this.foundry = foundry;
    }

    /**
     * 获取芯片
     * 厂家
     */
    public String getChipFactory() {
        return chipFactory;
    }

    /**
     * 设置芯片
     * 厂家
     */
    public void setChipFactory(String chipFactory) {
        this.chipFactory = chipFactory;
    }

    /**
     * 获取CPU型号
     */
    public String getCpuModel() {
        return cpuModel;
    }

    /**
     * 设置CPU型号
     */
    public void setCpuModel(String cpuModel) {
        this.cpuModel = cpuModel;
    }

    /**
     * 获取WiFi芯
     * 片厂家
     */
    public String getWifiChipFactory() {
        return wifiChipFactory;
    }

    /**
     * 设置WiFi芯
     * 片厂家
     */
    public void setWifiChipFactory(String wifiChipFactory) {
        this.wifiChipFactory = wifiChipFactory;
    }

    /**
     * 获取WiFi芯片型号
     */
    public String getWifiChipModel() {
        return wifiChipModel;
    }

    /**
     * 设置WiFi芯片型号
     */
    public void setWifiChipModel(String wifiChipModel) {
        this.wifiChipModel = wifiChipModel;
    }

    /**
     * 获取内存型号
     */
    public String getRamModel() {
        return ramModel;
    }

    /**
     * 设置内存型号
     */
    public void setRamModel(String ramModel) {
        this.ramModel = ramModel;
    }

    /**
     * 获取省份
     */
    public String getProvince() {
        return province;
    }

    /**
     * 设置省份
     */
    public void setProvince(String province) {
        this.province = province;
    }

    /**
     * 获取21年统一
     * 软件版本
     */
    public String getT2021Version() {
        return t2021Version;
    }

    /**
     * 设置21年统一
     * 软件版本
     */
    public void setT2021Version(String t2021Version) {
        this.t2021Version = t2021Version;
    }

    /**
     * 获取21年提测结果
     */
    public String getT2021Result() {
        return t2021Result;
    }

    /**
     * 设置21年提测结果
     */
    public void setT2021Result(String t2021Result) {
        this.t2021Result = t2021Result;
    }

    /**
     * 获取21年提测时间
     */
    public Date getT2021TestTimestamp() {
        return t2021TestTimestamp;
    }

    /**
     * 设置21年提测时间
     */
    public void setT2021TestTimestamp(Date t2021TestTimestamp) {
        this.t2021TestTimestamp = t2021TestTimestamp;
    }

    /**
     * 获取21年测试未通过项
     */
    public String getT2021FailedItems() {
        return t2021FailedItems;
    }

    /**
     * 设置21年测试未通过项
     */
    public void setT2021FailedItems(String t2021FailedItems) {
        this.t2021FailedItems = t2021FailedItems;
    }

    /**
     * 获取21年测试未通过项个数
     */
    public Integer getT2021FailedItemsNum() {
        return t2021FailedItemsNum;
    }

    /**
     * 设置21年测试未通过项个数
     */
    public void setT2021FailedItemsNum(Integer t2021FailedItemsNum) {
        this.t2021FailedItemsNum = t2021FailedItemsNum;
    }

    /**
     * 获取21年结果由通过变更为不通过
     */
    public String getT2021PassToFailFlag() {
        return t2021PassToFailFlag;
    }

    /**
     * 设置21年结果由通过变更为不通过
     */
    public void setT2021PassToFailFlag(String t2021PassToFailFlag) {
        this.t2021PassToFailFlag = t2021PassToFailFlag;
    }

    /**
     * 获取21年版本全国测
     * 试通过率
     */
    public Float getT2021TotalPassRate() {
        return t2021TotalPassRate;
    }

    /**
     * 设置21年版本全国测
     * 试通过率
     */
    public void setT2021TotalPassRate(Float t2021TotalPassRate) {
        this.t2021TotalPassRate = t2021TotalPassRate;
    }

    /**
     * 获取21年版本省内是否可部署
     */
    public String getT2021AllowDeploy() {
        return t2021AllowDeploy;
    }

    /**
     * 设置21年版本省内是否可部署
     */
    public void setT2021AllowDeploy(String t2021AllowDeploy) {
        this.t2021AllowDeploy = t2021AllowDeploy;
    }

    /**
     * 获取22年统一
     * 软件版本
     */
    public String getT2022Version() {
        return t2022Version;
    }

    /**
     * 设置22年统一
     * 软件版本
     */
    public void setT2022Version(String t2022Version) {
        this.t2022Version = t2022Version;
    }

    /**
     * 获取22年提测结果
     */
    public String getT2022Result() {
        return t2022Result;
    }

    /**
     * 设置22年提测结果
     */
    public void setT2022Result(String t2022Result) {
        this.t2022Result = t2022Result;
    }

    /**
     * 获取22年提测时间
     */
    public Date getT2022TestTimestamp() {
        return t2022TestTimestamp;
    }

    /**
     * 设置22年提测时间
     */
    public void setT2022TestTimestamp(Date t2022TestTimestamp) {
        this.t2022TestTimestamp = t2022TestTimestamp;
    }

    /**
     * 获取22年测试未通过项
     */
    public String getT2022FailedItems() {
        return t2022FailedItems;
    }

    /**
     * 设置22年测试未通过项
     */
    public void setT2022FailedItems(String t2022FailedItems) {
        this.t2022FailedItems = t2022FailedItems;
    }

    /**
     * 获取22年测试未通过项个数
     */
    public Integer getT2022FailedItemsNum() {
        return t2022FailedItemsNum;
    }

    /**
     * 设置22年测试未通过项个数
     */
    public void setT2022FailedItemsNum(Integer t2022FailedItemsNum) {
        this.t2022FailedItemsNum = t2022FailedItemsNum;
    }

    /**
     * 获取22年结果由通过变更为不通过
     */
    public String getT2022PassToFailFlag() {
        return t2022PassToFailFlag;
    }

    /**
     * 设置22年结果由通过变更为不通过
     */
    public void setT2022PassToFailFlag(String t2022PassToFailFlag) {
        this.t2022PassToFailFlag = t2022PassToFailFlag;
    }

    /**
     * 获取22年版本全国测
     * 试通过率
     */
    public Float getT2022TotalPassRate() {
        return t2022TotalPassRate;
    }

    /**
     * 设置22年版本全国测
     * 试通过率
     */
    public void setT2022TotalPassRate(Float t2022TotalPassRate) {
        this.t2022TotalPassRate = t2022TotalPassRate;
    }

    /**
     * 获取22年版本省内是否可部署
     */
    public String getT2022AllowDeploy() {
        return t2022AllowDeploy;
    }

    /**
     * 设置22年版本省内是否可部署
     */
    public void setT2022AllowDeploy(String t2022AllowDeploy) {
        this.t2022AllowDeploy = t2022AllowDeploy;
    }

    /**
     * 获取移动测试
     * 负责人
     */
    public String getCmTestContact() {
        return cmTestContact;
    }

    /**
     * 设置移动测试
     * 负责人
     */
    public void setCmTestContact(String cmTestContact) {
        this.cmTestContact = cmTestContact;
    }

    /**
     * 获取联系电话
     */
    public String getCmContactMobile() {
        return cmContactMobile;
    }

    /**
     * 设置联系电话
     */
    public void setCmContactMobile(String cmContactMobile) {
        this.cmContactMobile = cmContactMobile;
    }

    /**
     * 获取OA联系邮箱
     */
    public String getCmContactMailbox() {
        return cmContactMailbox;
    }

    /**
     * 设置OA联系邮箱
     */
    public void setCmContactMailbox(String cmContactMailbox) {
        this.cmContactMailbox = cmContactMailbox;
    }

    /**
     * 获取厂商
     * 接口人
     */
    public String getVdContact() {
        return vdContact;
    }

    /**
     * 设置厂商
     * 接口人
     */
    public void setVdContact(String vdContact) {
        this.vdContact = vdContact;
    }

    /**
     * 获取联系电话
     */
    public String getVdContactMobile() {
        return vdContactMobile;
    }

    /**
     * 设置联系电话
     */
    public void setVdContactMobile(String vdContactMobile) {
        this.vdContactMobile = vdContactMobile;
    }

    /**
     * 获取邮箱
     */
    public String getVdContactMailbox() {
        return vdContactMailbox;
    }

    /**
     * 设置邮箱
     */
    public void setVdContactMailbox(String vdContactMailbox) {
        this.vdContactMailbox = vdContactMailbox;
    }

    public String getT2023Version() {
        return t2023Version;
    }

    public void setT2023Version(String t2023Version) {
        this.t2023Version = t2023Version;
    }

    public String getT2023Result() {
        return t2023Result;
    }

    public void setT2023Result(String t2023Result) {
        this.t2023Result = t2023Result;
    }

    public Date getT2023TestTimestamp() {
        return t2023TestTimestamp;
    }

    public void setT2023TestTimestamp(Date t2023TestTimestamp) {
        this.t2023TestTimestamp = t2023TestTimestamp;
    }

    public String getT2023FailedItems() {
        return t2023FailedItems;
    }

    public void setT2023FailedItems(String t2023FailedItems) {
        this.t2023FailedItems = t2023FailedItems;
    }

    public Integer getT2023FailedItemsNum() {
        return t2023FailedItemsNum;
    }

    public void setT2023FailedItemsNum(Integer t2023FailedItemsNum) {
        this.t2023FailedItemsNum = t2023FailedItemsNum;
    }

    public String getT2023PassToFailFlag() {
        return t2023PassToFailFlag;
    }

    public void setT2023PassToFailFlag(String t2023PassToFailFlag) {
        this.t2023PassToFailFlag = t2023PassToFailFlag;
    }

    public Float getT2023TotalPassRate() {
        return t2023TotalPassRate;
    }

    public void setT2023TotalPassRate(Float t2023TotalPassRate) {
        this.t2023TotalPassRate = t2023TotalPassRate;
    }

    public String getT2023AllowDeploy() {
        return t2023AllowDeploy;
    }

    public void setT2023AllowDeploy(String t2023AllowDeploy) {
        this.t2023AllowDeploy = t2023AllowDeploy;
    }
}